#encoding: utf-8

def main():
	"""
	str1 = 'hello world'
	# 计算字符串的长度
	print(len(str1))
	# 获得字符串首字母大写的拷贝
	print(str1.capitalize())
	# 字符串大写
	print(str1.upper())
	# 从字符串中查找子串所在位置
	print(str1.find("or"))
	print(str1.find('shit'))
	# 与find类似但找不到子串时会引发异常
	# print(str1.index('or'))
	# print(str1.index('shit'))
 	# 检查字符串是否以指定的字符串开头
	print(str1.startswith('he'))
	print(str1.startswith('xxx'))
	# 检查字符串是否以指定的字符串结尾
	print(str1.endswith('ld'))
	# 将字符串以指定的宽度居中并在两侧填充指定的字符
	print(str1.center(50, '*'))
 	# 将字符串以指定的宽度靠右放置左侧填充指定的字符
	print(str1.rjust(50, " "))
	

	str2 = "abc123456"
	# 从字符串中取出指定位置的字符(下标运算)
	print(str2[2])
	# 字符串切片(从指定的开始索引到指定的结束索引)
	print(str2[2:5])
	print(str2[2:])
	print(str2[2::2])
	print(str2[::2])
	print(str2[::-1])
	print(str2[-3:-1])
	# 检查字符串是否由数字构成
	print(str2.isdigit())
	# 检查字符串是否以字母构成
	print(str2.isalpha())
	# 检查字符串是否以数字和字母构成
	print(str2.isalnum())

	str3 = '    dadas   dasda    '

	print(str3.strip())

	# 使用列表   和字符串一样 也可以进行切片

	list1 = ['1', '3', '5', '7', '100']

	print(list1)
	print(list1[2])
	print(list1[-1])
	list1[0] = 200
	print(list1)
	# 添加元素
	list1.append(111)
	list1.insert(1, 400)
	list1 += [888, 999]
	print(list1)
	# 删除元素
	list1.remove('3')
	#删除索引对象
	del list1[0]
	print(list1)
	# list1.clear()
	# print(list1)

	"""
	# fruits = ['111111111', '33333333', '555555', '777777', '100']

	# # 列表切片 
	# # fruits5 = fruits[::-1]
	# # print(fruits5)
	# fruits0 = sorted(fruits)
	# fruits1 = sorted(fruits, reverse = True)

	# fruits2 = sorted(fruits, key = len)
	# print(fruits0)
	# print(fruits1)
	# print(fruits2)

# 所谓斐波拉切数列

# def fib(n):
# 	a, b = 0, 1
# 	for _ in range(n):
# 		a , b = b, a+b
# 		yield a
	
# def main1():
# 	for val in fib(20):
# 		print(val)
		
	
# print(fib(20))

"""
《幸运的基督徒》
有15个基督徒和15个非基督徒在海上遇险，为了能让一部分人活下来不得不将其中15个人扔到海里面去，有个人想了个办法就是大家围成一个圈，由某个人开始从1报数，报到9的人就扔到海里面，他后面的人接着从1开始报数，报到9的人继续扔到海里面，直到扔掉15个人。由于上帝的保佑，15个基督徒都幸免于难，问这些人最开始是怎么站的，哪些位置是基督徒哪些位置是非基督徒。
"""

def main2():
	persons = [x for x in range(1,31)]*5
	for x in range(8,len(persons),8):
		print(persons[x]);
		

def main3():
    persons = [True] * 30
    counter, index, number = 0, 0, 0
    while counter < 15:
        if persons[index]:
            number += 1
            if number == 9:
                persons[index] = False
                counter += 1
                number = 0
        index += 1
        index %= 30
    for person in persons:
        print('基' if person else '非', end='')



if __name__ == '__main__':
	# main3()
	main2()
	# main1()
	# print(fib(20).next())







	